List Prolog AIDA and PAS List Prolog Interpreter runs programs which can be generated more easily in list format, it can be run in world languages, it teaches grammars like C so download it for free from GitHub. List Prolog Interpreter helps understand the workings of an interpreter (an algorithm that runs algorithms) in Prolog - Grammars - Educational state (you write the entire base cases' end-string and data in-out) in a clearer way than some other implementations of Prolog - you can more easily remember which are input and output. - Multiple inputs and outputs in grammars, enabling customising grammars on the fly - Examine the conversion from grammar to code in the interpreter, showing how string_concat is used in grammars - Examine the grammar interpreter for converting from an atom to a compound, etc. in Prolog, with a high distinction-enabling way of thinking (lookahead) to cope with multiple top level items - Examine the way to speed up from string_concat to append when appropriate for longer files, eliminating performance problems - Types - plan an algorithm and eliminate confusion about types when programming - Functionalism - Like Haskell, embed function names in calls, saving time by reusing intermediate predicates